User interface configuration using activator fields

ABSTRACT

A method displays a user interface including an activation entry for the activation entry and receives a first value that is input for the activation entry. In response to receiving the first value, the method determines an activator entry that is linked to the activation entry via linking information. The activator entry includes an activator value. The first value is compared to the activator value to calculate a visibility status for the activator entry. The user interface is altered based on the visibility status of the activator entry.

CROSS REFERENCES TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/801,682, filed Nov. 2, 2017. The entire contents of U.S. patentapplication Ser. No. 15/801,682 is incorporated herein by reference inits entirety for all purposes.

BACKGROUND

A system may connect multiple sources, such as different databases,applications, etc. For example, a local source may connect to a remotesource, multiple remote sources may connect, or any source that isremote from another source can connect. Also, there may be multipleinstances of each remote source, such as different databases anddifferent applications. To transfer data between sources, the systemneeds to configure each source to connect to one another. To create theconnection, a developer may use a user interface to configure the valuesfor the connection between the sources. The user interface may bestatically configured to display different options for configuring thesources. However, not all configurations may require all of the optionsthat are displayed. Because the user interface is static, the display ofthe different options stays the same no matter what configuration thedeveloper inputs. This may clutter the user interface and confuse thedeveloper. Further, the developer may end up inputting information foroptions that are not required for the configuration. For example, theuser interface may display options for multiple sources. However, if auser selects a first source, then inputting options for another sourcemay not be necessary even though the user interface is still displayingthose options.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a simplified system of a method for configuringconnections to remote sources using resource adapter configurationsaccording to some embodiments.

FIG. 2A depicts an example of a resource adapter configuration accordingto some embodiments.

FIG. 2B depicts an example of a user interface according to someembodiments.

FIG. 2C depicts an example of the user interface when local file serveris selected by a user according to some embodiments.

FIG. 2D depicts an example of a remote source configuration according tosome embodiments.

FIG. 3 depicts a more detailed example of a remote source configurationengine according to some embodiments.

FIG. 4 depicts a simplified flowchart of a method for starting theprocess of creating a resource adapter configuration for a remote sourceaccording to some embodiments.

FIG. 5 depicts a simplified flowchart of a method for activating entriesand generating the remote source configuration according to someembodiments.

FIG. 6 illustrates hardware of a special purpose computing machineconfigured with the configuration system according to one embodiment.

DETAILED DESCRIPTION

Described herein are techniques for a remote source configurationsystem. In the following description, for purposes of explanation,numerous examples and specific details are set forth in order to providea thorough understanding of particular embodiments. Particularembodiments as defined by the claims may include some or all of thefeatures in these examples alone or in combination with other featuresdescribed below, and may further include modifications and equivalentsof the features and concepts described herein.

Some embodiments provide a system to allow users to configure access toremote sources. A remote source is when a source accesses a targetsource. The target source may be remotely located from the source, whichmeans data at the target source is not stored at the source. The sourcemay be local to a company and be access data at the remote targetsource. Remote sources will be referred to in the description asaccessing each other, but one of the remote sources may be local to acompany, but accessing a remote source. These two sources are referredto as remote sources since they are remote to each other. The remotesources may store remote source configurations that are used toconfigure the remote sources to connect to one another. When a userwants to generate a remote source configuration, the system can retrievea resource adapter for a type of remote source. The resource adaptersmay be stored in a system resource adapter table and can be used toconfigure any number of remote sources. The resource adapters are usedto generate resource adapter configurations that are in a hierarchicalformat that a user interface uses to display configurable entries forthe remote source configuration. The resource adapter configuration maydescribe entries (e.g., groups and fields) that can be displayed or notdisplayed on the user interface. If an entry's visibility depends onother entry's value, then the other entries are configured as activationentries. The activation entries are entries that have multiple valuesassociated with them, for which a user can change the value duringruntime. Activator entries that include activators that the system usesto determine whether to change the visibility of the activator entriesaccording to the values associated with the activation entries. Thisstructure also allows the system to configure multiple entries or crossgroup support. That is, an activator entry may depend on the values formultiple activation entries.

A user may input information for the configuration of the remote source.When the input is received for different entries, the system candetermine which activator entries to display in the user interface basedon the values associated with the activation entries. For example, whena first value is set for an activation entry, the system may analyze theactivator entries and determine which activator entries to display andnot display. This generates a dynamic user interface displays onlyinformation that is relevant to the current remote source configurationbeing input by a user.

FIG. 1 depicts a simplified system 100 of a method for configuringconnections to remote sources using resource adapter configurationsaccording to some embodiments. System 100 includes a configurationsystem 102 and remote sources 104-1 to 104-N. Remote sources 104 mayconnect via resource adapters 114-1 and 114-2 upon configuration of theconnection.

Configuration system 102 includes a user interface 106 and a remotesource configuration engine 108. User interface 106 can display adescription of a resource adapter configuration 110 and allow a user toinput values for the configuration. Resource adapter configuration 110may describe the entries that are included in resource adapters 114 andis in a format that user interface 106 uses to display the description.Some embodiments provide a dynamic user interface 106 that can bedynamically reconfigured. Conventionally as discussed in the Background,a static user interface is provided in which all entries may bedisplayed no matter what the user selects. By providing a dynamicreconfiguration of user interface 106, a user may better be able toreview the resource adapter configuration for connections between remotesources. In user interface 106, entries that do have associatedactivator entries may always be displayed, and entries that areactivator entries with activators are displayed according to thecorresponding activation entry values. This provides a directed view ofuser interface 106 that guides the user as to which entries should beconfigured.

Remote source configuration engine 108 may receive resource adapters114-1 to 114-N for configuring remote sources 104. Each different typeof remote source 104 may include a different resource adapter 114. Forexample, a first type of remote source 104-1 includes a resource adapter114-1 and a second type of remote source 104-N includes a resourceadapter 114-N. However, each instance of a remote source may require aremote source configuration 116 to be generated from the correspondingresource adapter 114 to provide connectivity to a remote source. In oneinstance, remote source 104-1 may want to access remote source 104-N.Although remote source 104-1 is referred to as remote, remote source104-1 may be an application server of an enterprise that is accessing aremote source 104-N that is remote from the enterprise. In otherexamples, system 100 may connect two remote sources to transfer data,replicate data, transform data, or perform other data integration. Inone example, the remote source configuration allows remote source 104-1to access data from remote source 104-N as if the data is stored onremote source 104-2.

Once receiving resource adapters 114, remote source configuration engine108 parses resource adapters 114 and generates resource adapterconfiguration 110. Resource adapter configuration 110 defines whichentries remote source configuration engine 108 generates in userinterface 106. That is, remote source configuration engine 108 usesresource adapter configurations 110 to display entries for configuringvalues for a remote source configuration 116 for the remote source 104.A user can input values for the entries on user interface 106, which maythen be inserted into remote source configuration 116. Resource adapterconfiguration 110 may specify which entries are displayed on userinterface 106, and remote source configuration 116 includes the valuesthat are input for the connection between remote sources 104.

Given that different types of remote sources may have different resourceadapters 114, some embodiments use a format that allows user interface106 to process different resource adapter configurations 110 fordifferent resource adapters 114 in a common manner That is, userinterface 106 does not need to know which resource adapter configuration110 is being processed. Each resource adapter 114 is configured in ahierarchical format, such as an extensible markup language (XML) fileformat. The hierarchy may include entries that may be arranged in groupsand fields. When the term entries is used, this may mean a group, field,multiple groups or fields, or a combination of group and fields. Forexample, a group may include multiple fields. Also, any of the groups orfields may be assigned values, such as a source may be assigned a firstdatabase location and a destination may be assigned a second databaselocation. Remote source configuration engine 108 can receive resourceadapters 114 and parse the hierarchical format in a standard way togenerate resource adapter configurations 110.

Once user interface 106 displays entries for resource adapterconfiguration 110, a user can then input or change the values for someof the entries. When these values are changed, remote sourceconfiguration engine 108 can parse the resource adapter configuration110 to evaluate the activation entries and activator entries. This maychange the visibility of some entries in user interface 106. The use ofactivation entries and activator entries allows remote sourceconfiguration engine 108 to dynamically change user interface 106 basedon a user's input. This produces a user interface that is transformedand clearer to a user when compared to a static user interface that maydisplay unnecessary entries in which input could be received. The use ofactivation entries and activator entries allows user interface 106 todetermine which entries to display and not display across multipleresource adapters. The activation entries and activator entries is ageneric way to program the dynamic reconfiguration of user interface 106in resource adapters. Remote source configuration engine 108 candetermine the visibility of entries at runtime based on input from auser.

Once a configuration for a remote source connection is finalized in userinterface 106, remote source configuration engine 108 uses the values togenerate remote source configuration 116, which can be sent to remotesources 104. In some examples, remote source configuration engine 108may test the connection for the remote source connection that wasspecified in remote source configuration 116. Remote sourceconfiguration engine 108 may test the values for the entries by usingthem to connect to a remote source 104. If successful, then remotesource configuration engine 108 may send remote source configuration 116to remote sources 104. If not successful, remote source configurationengine 108 may notify a user.

Resource Adapter Configuration 110 and User Interface 106

FIG. 2A depicts an example of a resource adapter configuration 110 andFIG. 2B depicts an example of user interface 106 according to someembodiments. Resource adapter configuration 110 may include entries ofgroups 202-1 to 202-3 and fields 204-1 to 204-6. In FIG. 2A, theconfiguration for three groups are shown as a first group 202-1 ofConnectionInfo, a second group 202-2 of HDFS configuration, and a thirdgroup 202-3 of SharePointConfiguration. In FIG. 2B, user interface 106displays the names for these three groups at 202-1, 202-2, and 202-3 ina property name column 210 and values in a column 212.

Each group 202 may have fields 204. In resource adapter configuration110, group 202-1 includes four fields 204-1 to 204-4 of Source Options,Target Options, Root Directory, and Directory of the file formatdefinitions. The same reference numbers are used for groups and fieldsin user interface 106 as shown in resource adapter configuration 110. Inuser interface 106, these fields are shown below the ConnectionInfogroup 202-1.

A user may input values for the entries. For example, at 208-1 to 208-4,the values for fields 204-1 to 204-4 can be input or alternatively canbe automatically filled with default values. Some or all of these fieldsmay be activation fields. Activation fields are fields that havemultiple value choices that a user can select. A user can change thevalue during runtime by inputting a value in Value column 212. Then, thefields that have activators may have their visibilities changed in userinterface 106 depending on the value that is input. For example, inresource adapter configuration 110, group 202-3 includes two activatorfields 204-5 and 204-6 of Server URL and Local File Path, respectively.The activation field at 204-1 may be one of two values as shown at 207of: SharePoint or local. This may mean that the source may be aSharePoint server or a local file system. In user interface 106, at208-1, the user has selected SharePoint Server for the value (e.g.,SharePoint). This indicates the value is SharePoint for the activationfield.

To determine if a field has activator fields, remote sourceconfiguration engine 108 may use linking information, such as activatoridentifiers (IDs), to link the activation fields and activator fields.At 208 and 210, the activator fields include an activator ID of “2”.This corresponds to the activator ID in activation field 204-1 at 212since the Source Options field includes the same ID=“2” value. Althoughthe IDs are used to determine activator fields for activation fields,other linking information may be used. Once determining the activationfield has activator fields, then remote source configuration engine 108determines the activator field's visibility based on the user'sselection of the activation field value. For example, the activatorfields may be activated as a visibility status, which may mean thefields are shown in user interface 106 and/or a user can input valuesfor the fields.

For both activator fields 204-5 and 204-6, the activator value is“SharePoint”. The activation value and activator values may be compared.If a criteria is met, then a visibility status is changed. For example,the criteria may be that the activation value and activator valuesmatch; however, other criteria may be used. The visibility status may bevisible when the values match and not visible when the values do notmatch. Since the user has selected the value of “SharePoint”, then userinterface 106 displays the fields shown at 204-5 and 204-6. However, ifthe user had selected “Local File System”, which has the value of“Local”, then activator fields 204-5 and 204-6 in group 202-3 would notbe displayed. For example, group 202-3 is the SharePoint configuration,which does not need to be shown if the Local File System being used. Insome embodiments, user interface 106 may not display the entire group202-3 for the SharePoint configuration or may just not display theactivator fields 204-5 and 204-6. Also, instead of not displaying theactivator fields, remote source configuration engine 108 may change thevisibility, such as greying out activator fields 204-5 and 204-6, notallowing any entry of values in activator fields 204-5 and 204-6, orother visibility changes that can be performed to indicate a visibilitystatus for the activator fields.

In some examples a user may change the value from “SharePoint” to “LocalFile System”. FIG. 2C depicts an example of user interface 106 whenlocal file server is selected by a user according to some embodiments.At 220, the value for Source Options is Local File Server. In someexamples, user interface 106 does not display activator fields 204-5 and204-6. For example, group 202-3 may not be displayed so that activatorfields 204-5 and 204-6 are not shown. In other examples, user interface106 may remove activator fields 204-5 and 204-6, grey them out, etc.However, a group local file server configuration at 202-4 may bedisplayed to configured the local file server if activation fields areincluded. In other examples, the local file server value may not haveany activator fields and nothing is displayed for that field.

To determine the visibility status for activator fields 204-5 and 204-6,remote source configuration engine 108 determines that activation fields208-1 includes activator fields. Then, referring to activator fields204-5 and 204-6 in resource adapter configuration 110, remote sourceconfiguration engine 108 determines that the value of “local” for sourceoptions is not the same as the value of “SharePoint” for activatorfields 204-5 and 204-6. Thus, remote source configuration engine 108determines that activator fields 204-5 and 204-6 are not activated dueto the value in activation field 208-1. Being not activated may meanthat the fields are shown or input cannot be received for the fields.

Once a save command in user interface 106 is received and a user hascreated a remote source configuration, remote source configurationengine 108 uses the values to generate remote source configuration 116.FIG. 2D depicts an example of remote source configuration 116 accordingto some embodiments. Remote source configuration 116 includes the valuesentered by a user. For example, at 250, remote source configuration 116stores the values for group 202-1 and fields 204-1 to 204-4. Then, at252, since group 202-3 is activated in addition to activator fields204-5 and 204-6, remote source configuration 116 stores the values foractivator fields 204-5 and 204-6.

Remote source configuration engine 108 may store this remote sourceconfiguration 116. This may be in a hierarchical format, such as anextensible markup language (XML) file format, and remote sourceconfiguration engine 108 can send remote source configuration 116 toremote sources 104, such as the source and target of a SharePoint serverand a remote HDFS. Remote source 104 may store the file in a table asconnection information for connecting to another remote source 104. Thisconnection information may be later retrieved by remote sourceconfiguration engine 108 if additional changes to resource adapterconfiguration 110 are needed.

Remote Source Configuration Engine 108

FIG. 3 depicts a more detailed example of remote source configurationengine 108 according to some embodiments. Remote source configurationengine 108 includes a user interface (UI) layer 300, a controller layer314, and a persistence layer 324. The layers may be included on a singlecomputing device or distributed among multiple computing devices.

User interface layer 300 receives resource adapters 114 and transformsthe adapters into resource adapter configuration 110, which is a userinterface-usable format that user interface 106 can use. A remote sourceconfiguration parser 302 parses the resource adapter configuration 110and displays groups and fields from the resource adapter configurationin user interface 106. In one example, when values have not been enteredfor any activation fields, then user interface 106 does not display anyactivator fields. Also, default values may be entered into activationfields, which may trigger display of activator fields depending on thedefault values.

When a change to an activation field is received from a user, such as auser may change an activation field to a new value or input a value whenno value was previously entered, update activator 304 is triggered.Also, update activator 304 may be performed every time a value for anentry is changed. Update activator 304 recursively iterates throughentries to determine any activators are activated by the change. Updateactivator 304 may use different processes to process groups and fields.For example, an update group activator 306 may recursively iteratethrough the groups in resource adapter configuration 110 to determine ifthe activator for an activation entry is used in any of the groups.Update group activator 306 may call current entry processor activator308 to process each entry of a group. For example, each group may havemultiple fields and a current entry processor activator 308 may reviewthe group and fields in the group to determine if this activator is usedin the group or any of the current fields of each respective group. Ifan activation group or field has an activator, current entry processoractivator 308 checks each activator group or field's value to determineif its value is the same as the activator value to enable that activatorentry. Current entry processor activator 308 then determines whether ornot to display group or fields based on the values.

An activator entry may depend on multiple activation entries. Forexample, the value for multiple activation entries should correspond toa value for an activator entry for that activator entry to be activated.A multiple activator process 310 may process activator entries thatdepend on multiple activation entries. In one embodiment, multipleactivator process 310 may use logic to determine whether to activate anactivator entry. In some examples, the value for each activation entryneeds to correspond to the value for the activator entry. If the resultfor multiple activation entries is “true” and “true”, then thisactivator entry is activated. However, a result of “true” and “false”does not activate the activator entry. This may be similar to a logicalAND operation. One reason the AND operation is used is because anactivator entry may only be activated when it is used and a false resultmay mean that one activation entry is not configured to use theactivator and thus the activator should not be visible.

When an activator entry should be activated, entry enablement handler312 may activate the entry. Conversely, entry enablement handler 312 maydeactivate the entry when a value change deactivates the activatorentry. For example, entry enablement handler 312 may cause userinterface 106 to change the status of an entry, such as by making theentry visible or not visible.

The user may perform different actions, such as adding a group orremoving a group in the configuration, and within a group, adding orchanging the value of an entry or of a field. This may cause entryenablement handler 312 to perform different actions. For example, if thegroup or fields have more than one activator entry, update groupactivator 306 and current entry processor activator 308 check eachactivator entry's value to determine if the activator entry's value isthe same as the current activation value to determine if the group orfield should be enabled. If the field is activated by the input, but isnot activated in the existing user interface 106, entry enablementhandler 312 adds the field back to user interface 106, such as in thehierarchy displayed in user interface 106. If the group is not displayedin user interface 106, entry enablement handler 312 adds the group backto user interface. Adding the group or field back to user interface 106may also display places where users can now input values for the addedgroups or fields. If the group or field is deactivated from the input,entry enablement handler 312 removes the group or field from userinterface 106. If the input removes all fields from a group thus meaningthe group is empty, then entry enablement handler 312 may remove thegroup from user interface 106.

Controller layer 314 includes functions used to control resource adapterconfiguration 110 and remote source configuration 116. For example,controller layer 314 includes a create engine 316, a save engine 318, anedit engine 320, and a delete engine 322. When user interface 106triggers creation of a remote source, create engine 316 can create aresource adapter configuration 110 and pass resource adapterconfiguration 110 to user interface 106 for display of the resourceadapter configuration. When user interface 106 saves remote sourceconfiguration 116, the values from user interface 106 are passed tocontroller layer 314 and save engine 318 saves remote sourceconfiguration 116 in persistence layer 324. When an edit to remotesource configuration 116 in user interface 106 is received, edit engine320 retrieves remote source configuration 116 from persistence layer 324and returns remote source configuration 116 to user interface layer 300,where user interface 106 renders the data from remote sourceconfiguration 116. When a remote source is deleted, delete engine 322deletes a remote source configuration 116 from the remote source.

Persistence layer 324 may store resource adapter configurations 110 witheach resource adapter 326. Resource adapter 326 may include other datathat is needed to access remote sources 104. Also, each remote source104 may include a remote source entity 330 that stores informationrelated to the remote source. For example, remote source entity 330stores the values for remote source configuration 116. When a new remotesource is created, a new remote source entity 330 is created with aremote source configuration 116 that is received from controller layer314. Remote source entities 330 can also be edited and deleted frompersistence layer 324.

Process of Creating Remote Source Configurations 116

FIG. 4 depicts a simplified flowchart 400 of a method for starting theprocess of creating a resource adapter configuration 110 for a remotesource 104 according to some embodiments. Remote source configurationengine 108 includes a specialized parser that recognizes activationentries and activator entries. The parser can determine linkinginformation and determine a display status for activator entries. In oneexample, remote source configuration engine 108 parses all groups andfields when a change to a value is made. When using user interface 106,a user expects a certain response time to change user interface 106, andthe specialized parser is used to perform the parsing in the timerequired to display the changed user interface. At 402, remote sourceconfiguration engine 108 receives a request to create a connection witha remote source. For example, a user may want to configure one remotesource 104 to be able to connect to another remote source 104.

At 404, remote source configuration engine 108 sends a request for oneor more resource adapters 114. The resource adapter 114 that isretrieved may be associated with a type of remote source 104 and iswritten in a hierarchical format. Remote source configuration engine 108may require one or multiple resource adapters 114 for the types ofremote sources that might connect. At 406, remote source configurationengine 108 receives the one or more resource adapters 114.

At 408, remote source configuration engine 108 parses the one or moreresource adapters 114. For example, remote source configuration engine108 may parse the groups and fields of resource adapter 114 anddetermine the activation/activator entries from the hierarchy of remotesource configuration 116. Then, at 410, remote source configurationengine 108 generates resource adapter configuration 110 from the one ormore resource adapters 114. Resource adapter configuration 110 includesinformation for possible entries that can be configured for remotesource configuration 116. At 412, remote source configuration engine 108displays groups and fields from resource adapter configuration 110 inuser interface 106. For example, the groups and fields are displayed ina hierarchy. Also, remote source configuration engine 108 may notdisplay activator groups or activator fields until input from a user isreceived for corresponding activation fields that specifies a value.

At 414, remote source configuration engine 108 receives an input tochange a value for an entry of remote source configuration 116. Forexample, a user may change a value for one of the fields for a group.Once an entry is changed, then remote source configuration engine 108may perform a process to determine activation of entries for userinterface 106, if needed.

Once an entry is changed, remote source configuration engine 108 thenreviews resource adapter configuration 110 to determine whether toactivate any entries. FIG. 5 depicts a simplified flowchart 500 of amethod for activating entries and generating remote source configuration116 according to some embodiments. At 502, once receiving the input tochange a value for an entry in user interface 106, remote sourceconfiguration engine 108 recursively loops the groups of resourceadapter configuration 110. For example, for each group, at 504, updategroup activator 206 determines if a group has activators entries thatare associated with it. If not, at 510, remote source configurationengine 108 shows the group in user interface 106.

However, if the group has activator entries, at 506, update groupactivator 206 finds the activation entry's values for the activatorentries. An activator for a group is a group that has an activatorsimilar to the field's shown at 204-5 and 204-6 in FIG. 2A. Theactivation value is found from input from a user for the value for theactivation group. Then, at 508, remote source configuration engine 108calculates the activator group's visibility based on the activationvalues and activator values for the activator group. For example, remotesource configuration engine 108 parses the activator group to determinethe activator values and then compares the activator values to theactivation values to determine if the group is activated or not. If agroup is activated, user interface 106 may display the activator groupwith the activation group.

For each group, at 512, remote source configuration engine 108 loops thefields in each group. For example, remote source configuration engine108 reviews each field in resource adapter configuration 110. At 514,current entry processor activator 208 determines if a field hasactivators associated with it. For example, a field may not include anactivator and thus should be displayed in user interface 106. However,one or more of the fields may have associated activators, then remotesource configuration engine 108 tests whether or not these activatorfields should be activated or not. If the field does not haveactivators, at 516, remote source configuration engine 108 displays thefield in user interface 106.

If the field has activators, at 518, remote source configuration engine108 finds the values for the activation entry for the activator field.For example, in FIG. 2A, the activation values for field 204-1 may beSharePoint or local. However, the activation entry may be an activationgroup, activation field, multiple activation groups or fields, or anycombination of the above. Then, at 520, remote source configurationengine 108 calculates the field's visibility based on the activationvalues and activator values. For example, in FIG. 2A, the activatorvalue for fields 204-5 and 204-6 is SharePoint. Then, remote sourceconfiguration engine 108 compares the activator values to the activationvalues to determine if the field is activated or not. If a field isactivated, user interface 106 may display the activator field with theactivation field or group.

As the process proceeds, the user may again change a value in userinterface 106. For example, at 522, user interface 106 receives a changeto an activation value for an entry. Then, the process continues at 502to continue looping the groups and fields of resource adapterconfiguration 110 to determine which entries to display in userinterface 106.

When the process is finished, at 524, update activator 204 saves remotesource configuration 116. For example, remote source configurationengine 108 saves the values from user interface 106 in remote sourceconfiguration 116.

Accordingly, some embodiments provide a flexible process to generateremote source configurations. By including activators in resourceadapter configurations 110, remote source configuration engine 108 candynamically generate user interface 106 according to a user's selectionof values for certain fields or groups. The resource adapterconfiguration is also flexible and extendible. User interface 106 doesnot need to know which resource adapter is being used to be able togenerate a remote source configuration. Multiple activation fields canbe included in the configuration with multiple activators.

System

FIG. 6 illustrates hardware of a special purpose computing machineconfigured with configuration system 102 according to one embodiment. Anexample computer system 610 is illustrated in FIG. 6. Computer system610 includes a bus 605 or other communication mechanism forcommunicating information, and a processor 601 coupled with bus 605 forprocessing information. Computer system 610 also includes a memory 602coupled to bus 605 for storing information and instructions to beexecuted by processor 601, including information and instructions forperforming the techniques described above, for example. This memory mayalso be used for storing variables or other intermediate informationduring execution of instructions to be executed by processor 601.Possible implementations of this memory may be, but are not limited to,random access memory (RAM), read only memory (ROM), or both. A storagedevice 603 is also provided for storing information and instructions.Common forms of storage devices include, for example, a hard drive, amagnetic disk, an optical disk, a CD-ROM, a DVD, a flash memory, a USBmemory card, or any other medium from which a computer can read. Storagedevice 603 may include source code, binary code, or software files forperforming the techniques above, for example. Storage device and memoryare both examples of computer readable storage mediums.

Computer system 610 may be coupled via bus 605 to a display 612, such asa cathode ray tube (CRT) or liquid crystal display (LCD), for displayinginformation to a computer user. An input device 611 such as a keyboardand/or mouse is coupled to bus 605 for communicating information andcommand selections from the user to processor 601. The combination ofthese components allows the user to communicate with the system. In somesystems, bus 605 may be divided into multiple specialized buses.

Computer system 610 also includes a network interface 604 coupled withbus 605. Network interface 604 may provide two-way data communicationbetween computer system 610 and the local network 620. The networkinterface 604 may be a digital subscriber line (DSL) or a modem toprovide data communication connection over a telephone line, forexample. Another example of the network interface is a local areanetwork (LAN) card to provide a data communication connection to acompatible LAN. Wireless links are another example. In any suchimplementation, network interface 604 sends and receives electrical,electromagnetic, or optical signals that carry digital data streamsrepresenting various types of information.

Computer system 610 can send and receive information through the networkinterface 604 across a local network 620, an Intranet, or the Internet630. In the Internet example, software components or services may resideon multiple different computer systems 610 or servers 631-635 across thenetwork. The processes described above may be implemented on one or moreservers, for example. A server 631 may transmit actions or messages fromone component, through Internet 630, local network 620, and networkinterface 604 to a component on computer system 610. The softwarecomponents and processes described above may be implemented on anycomputer system and send and/or receive information across a network,for example.

Particular embodiments may be implemented in a non-transitorycomputer-readable storage medium for use by or in connection with theinstruction execution system, apparatus, system, or machine. Thecomputer-readable storage medium contains instructions for controlling acomputer system to perform a method described by particular embodiments.The computer system may include one or more computing devices. Theinstructions, when executed by one or more computer processors, may beconfigured to perform that which is described in particular embodiments.

As used in the description herein and throughout the claims that follow,“a”, “an”, and “the” includes plural references unless the contextclearly dictates otherwise. Also, as used in the description herein andthroughout the claims that follow, the meaning of “in” includes “in” and“on” unless the context clearly dictates otherwise.

The above description illustrates various embodiments along withexamples of how aspects of particular embodiments may be implemented.The above examples and embodiments should not be deemed to be the onlyembodiments, and are presented to illustrate the flexibility andadvantages of particular embodiments as defined by the following claims.Based on the above disclosure and the following claims, otherarrangements, embodiments, implementations and equivalents may beemployed without departing from the scope hereof as defined by theclaims.

What is claimed is:
 1. A method comprising: displaying, by a computingdevice, a user interface including an activation entry for theactivation entry; receiving, by the computing device, a first value thatis input for the activation entry; in response to receiving the firstvalue, determining, by the computing device, an activator entry that islinked to the activation entry via linking information, the activatorentry including an activator value; comparing, by the computing device,the first value to the activator value to calculate a visibility statusfor the activator entry; and altering, by the computing device, the userinterface based on the visibility status of the activator entry.
 2. Themethod of claim 1, wherein input for the activator entry is required forconfiguring a connection from a first source to a second source
 3. Themethod of claim 2, wherein altering the user interface based on thevisibility status of the activator entry comprises: displaying theactivator entry when it is required for configuring the connection fromthe first source to the second source based on the first value from theactivation entry.
 4. The method of claim 3, wherein altering the userinterface based on the visibility status of the activator entrycomprises: not displaying the activator entry when it is not requiredfor configuring the connection from the first source to the secondsource based on the first value from the activation entry.
 5. The methodof claim 1, wherein: the activation entry is included in a group, andthe activator entry is in the group for the activation entry.
 6. Themethod of claim 5, wherein: the group includes a field, and theactivator entry is a field linked to the activation entry.
 7. The methodof claim 1, further comprising: receiving a resource adapter for use inconnecting a first source to a second source; and parsing the resourceadapter to determine a resource adapter configuration in a hierarchicalformat that includes the activation entries and activator entries. 8.The method of claim 7, further comprising: reviewing each entry in theresource adapter configuration; determining whether each entry includesan activator entry; and displaying entries that do not include theactivator entry in the user interface.
 9. The method of claim 1, furthercomprising: selecting a group for the activation entry; and calculatinga visibility of the group based on the first value and a group value.10. The method of claim 9, further comprising: selecting a field for thegroup that is associated with the activator entry; and performing thecomparing the first value to the activator value to calculate thevisibility status for the field that is associated with the activatorentry in the group.
 11. The method of claim 10, wherein: the field thatis associated with the activator entry is displayed when the first valuemeets a criteria with respect to the activator value for the activatorentry.
 12. The method of claim 1, further comprising: creating a remotesource configuration for a connection from a first source to a secondsource based on the input for the activator entry.
 13. The method ofclaim 12, wherein the user interface does not allow input for entriesthat are not activated by the first value such that the remote sourceconfiguration includes input only applicable for the connection.
 14. Themethod of claim 1, wherein the linking information is an identifier forthe activation entry and is included in the activator entry.
 15. Themethod of claim 1, wherein: the activation entry is associated with aplurality of values, and one of the values is included in the activatorentry.
 16. A non-transitory computer-readable storage medium containinginstructions, that when executed, control a computer system to beoperable for: displaying a user interface including an activation entryfor the activation entry; receiving a first value that is input for theactivation entry; in response to receiving the first value, determiningan activator entry that is linked to the activation entry via linkinginformation, the activator entry including an activator value; comparingthe first value to the activator value to calculate a visibility statusfor the activator entry; and altering the user interface based on thevisibility status of the activator entry.
 17. The non-transitorycomputer-readable storage medium of claim 16, wherein input for theactivator entry is required for configuring a connection from a firstsource to a second source
 18. The non-transitory computer-readablestorage medium of claim 17, wherein altering the user interface based onthe visibility status of the activator entry comprises: displaying theactivator entry when it is required for configuring the connection fromthe first source to the second source based on the first value from theactivation entry.
 19. The non-transitory computer-readable storagemedium of claim 18, wherein altering the user interface based on thevisibility status of the activator entry comprises: not displaying theactivator entry when it is not required for configuring the connectionfrom the first source to the second source based on the first value fromthe activation entry.
 20. An apparatus comprising: one or more computerprocessors; and a non-transitory computer-readable storage mediumcomprising instructions, that when executed, control the one or morecomputer processors to be operable for: displaying a user interfaceincluding an activation entry for the activation entry; receiving afirst value that is input for the activation entry; in response toreceiving the first value, determining an activator entry that is linkedto the activation entry via linking information, the activator entryincluding an activator value; comparing the first value to the activatorvalue to calculate a visibility status for the activator entry; andaltering the user interface based on the visibility status of theactivator entry.